//
//  NSDateFormatter+CycleDateFormatter.h
//  CycleControlFunction
//
//  Created by ddy on 2018/8/14.
//  Copyright © 2018年 cycle. All rights reserved.
//  过度的创建NSDateFormatter用于NSDate与NSString之间转换，会导致App卡顿，打开Profile工具查一下性能，你会发现这种操作占CPU比例是非常高的。据官方说法，创建NSDateFormatter代价是比较高的，如果你使用的非常频繁，那么建议你缓存起来，缓存NSDateFormatter一定能提高效率

#import <Foundation/Foundation.h>

@interface NSDateFormatter (CycleDateFormatter)
/**
 * 初始化并缓存，默认有formatterString
 */
+ (NSDateFormatter *)cycle_cachedDateFormatter;
/**
 * 初始化并缓存，传formatterString，比如"yyyy-MM-dd HH:mm:ss"
 * 调用CycleDateFormatter任意一个方法，第一次使用后便会被缓存起来，设置方法参数：formatterString将不再生效，如需例外设置不同类型的formatter请初始化【NSDateFormatter cycle_cachedDateFormatter】后在设置即可。
 */
+ (NSDateFormatter *)cycle_cachedDateFormatterWithFormatString:(NSString *)formatterString;
@end
